package com.soen6441.generics;
import java.util.ArrayList;
import java.util.List;

class ReifiedTypes {
    // poor man's typedef
    static class StringList extends ArrayList<String> {};

    public static void main(String[] args) {
        List<String> strings = new ArrayList<String>();
        // won't compile
        //boolean isInstance = strings instanceof List<String>;
        // this compiles but not exactly what we want
        //isInstance = strings instanceof List;
        StringList strings2 = new StringList();
        // work's fine if you really need to distinguish
        // bewtween a list of strings and a list of something else
        //isInstance = strings2 instanceof StringList;
    }
}
